/* tslint:disable */
/* eslint-disable */

import React, { FunctionComponent } from 'react';
import { ViewProps } from 'react-native';
import { GProps } from 'react-native-svg';
import IconFuxuankuangYixuan from './IconFuxuankuangYixuan';
import IconShangcheng from './IconShangcheng';
import IconXiangxiazhankai from './IconXiangxiazhankai';
import IconYihexiao from './IconYihexiao';
import IconYiguoqi from './IconYiguoqi';
import IconDaihexiao from './IconDaihexiao';
import IconZuopin from './IconZuopin';
import IconMenpiao from './IconMenpiao';
import IconGuanyuwomen from './IconGuanyuwomen';
import IconKefu from './IconKefu';
import IconLiulan from './IconLiulan';
import IconShouyefill from './IconShouyefill';
import IconWodefill from './IconWodefill';
import IconXiaoxi from './IconXiaoxi';
import IconJia from './IconJia';
import IconRight1Copy from './IconRight1Copy';
import IconShijian from './IconShijian';
import IconRenshu from './IconRenshu';
import IconDizhi from './IconDizhi';
import IconFenxiang from './IconFenxiang';
import IconNaviconTp from './IconNaviconTp';
import IconSaoma from './IconSaoma';
import IconWeixin from './IconWeixin';
export { default as IconFuxuankuangYixuan } from './IconFuxuankuangYixuan';
export { default as IconShangcheng } from './IconShangcheng';
export { default as IconXiangxiazhankai } from './IconXiangxiazhankai';
export { default as IconYihexiao } from './IconYihexiao';
export { default as IconYiguoqi } from './IconYiguoqi';
export { default as IconDaihexiao } from './IconDaihexiao';
export { default as IconZuopin } from './IconZuopin';
export { default as IconMenpiao } from './IconMenpiao';
export { default as IconGuanyuwomen } from './IconGuanyuwomen';
export { default as IconKefu } from './IconKefu';
export { default as IconLiulan } from './IconLiulan';
export { default as IconShouyefill } from './IconShouyefill';
export { default as IconWodefill } from './IconWodefill';
export { default as IconXiaoxi } from './IconXiaoxi';
export { default as IconJia } from './IconJia';
export { default as IconRight1Copy } from './IconRight1Copy';
export { default as IconShijian } from './IconShijian';
export { default as IconRenshu } from './IconRenshu';
export { default as IconDizhi } from './IconDizhi';
export { default as IconFenxiang } from './IconFenxiang';
export { default as IconNaviconTp } from './IconNaviconTp';
export { default as IconSaoma } from './IconSaoma';
export { default as IconWeixin } from './IconWeixin';

export type IconNames = 'icon-fuxuankuang-yixuan' | 'icon-shangcheng' | 'icon-xiangxiazhankai' | 'icon-yihexiao' | 'icon-yiguoqi' | 'icon-daihexiao' | 'icon-zuopin' | 'icon-menpiao' | 'icon-guanyuwomen' | 'icon-kefu' | 'icon-liulan' | 'icon-shouyefill' | 'icon-wodefill' | 'icon-xiaoxi' | 'icon--jia' | 'icon-right-1-copy' | 'icon-shijian' | 'icon-renshu' | 'icon-dizhi' | 'icon-fenxiang' | 'icon-navicon-tp' | 'icon-saoma' | 'icon-weixin';

interface Props extends GProps, ViewProps {
  name: IconNames;
  size?: number;
  color?: string | string[];
}

let IconFont: FunctionComponent<Props> = ({ name, ...rest }) => {
  switch (name) {
    case 'icon-fuxuankuang-yixuan':
      return <IconFuxuankuangYixuan key="1" {...rest} />;
    case 'icon-shangcheng':
      return <IconShangcheng key="2" {...rest} />;
    case 'icon-xiangxiazhankai':
      return <IconXiangxiazhankai key="3" {...rest} />;
    case 'icon-yihexiao':
      return <IconYihexiao key="4" {...rest} />;
    case 'icon-yiguoqi':
      return <IconYiguoqi key="5" {...rest} />;
    case 'icon-daihexiao':
      return <IconDaihexiao key="6" {...rest} />;
    case 'icon-zuopin':
      return <IconZuopin key="7" {...rest} />;
    case 'icon-menpiao':
      return <IconMenpiao key="8" {...rest} />;
    case 'icon-guanyuwomen':
      return <IconGuanyuwomen key="9" {...rest} />;
    case 'icon-kefu':
      return <IconKefu key="10" {...rest} />;
    case 'icon-liulan':
      return <IconLiulan key="11" {...rest} />;
    case 'icon-shouyefill':
      return <IconShouyefill key="12" {...rest} />;
    case 'icon-wodefill':
      return <IconWodefill key="13" {...rest} />;
    case 'icon-xiaoxi':
      return <IconXiaoxi key="14" {...rest} />;
    case 'icon--jia':
      return <IconJia key="15" {...rest} />;
    case 'icon-right-1-copy':
      return <IconRight1Copy key="16" {...rest} />;
    case 'icon-shijian':
      return <IconShijian key="17" {...rest} />;
    case 'icon-renshu':
      return <IconRenshu key="18" {...rest} />;
    case 'icon-dizhi':
      return <IconDizhi key="19" {...rest} />;
    case 'icon-fenxiang':
      return <IconFenxiang key="20" {...rest} />;
    case 'icon-navicon-tp':
      return <IconNaviconTp key="21" {...rest} />;
    case 'icon-saoma':
      return <IconSaoma key="22" {...rest} />;
    case 'icon-weixin':
      return <IconWeixin key="23" {...rest} />;
  }

  return null;
};

IconFont = React.memo ? React.memo(IconFont) : IconFont;

export default IconFont;
